package com.example.Wisdompark.dao;

import com.example.Wisdompark.pojo.Current_Cargo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

@Component
public interface CurrentCargoMapper {
    // 查询所有状态为在库中的货物(state = 1)
    List<Current_Cargo> queryAllCargo();

    // 根据state状态查询货物
    List<Current_Cargo> queryCargoByState(Integer state);

    // 插入一个货物
    int insertACargo(Current_Cargo current_cargo);

    // 删除一个货物
    int delACargo(@Param("cargo_num")String cargo_num);

    // 修改货物信息
    int updateCargo(Current_Cargo current_cargo);

    // 根据入库订单号 删除一批货物
    int delCargos(@Param("order_num")String order_num);

    // 根据货物编号查询货物信息
    Current_Cargo queryByCargoNum(@Param("cargo_num")String cargo_num);

    // 根据订单编号查询货物信息
    List<Current_Cargo> queryByOrderNum(@Param("order_num")String order_num);

    // 根据货物名字查询货物信息
    Current_Cargo queryByCargoName(@Param("cargo_name")String cargo_name);

    // 根据编号更新状态
    int updateCargoState(@Param("order_num")String order_num,
                         @Param("state") int state);

    // 根据出库订单内容修改相应的货物数量
    int delSomeCargo(@Param("cargo_name")String cargo_name,
                     @Param("cargo_amount")int cargo_amount);

    // 根据货物名字，增加货物数量
    int addCargoAmount(@Param("cargo_name")String cargo_name,
                       @Param("cargo_amount")int cargo_amount);


}
